package com.ruoyi.outbound.consignment.service;

import java.util.List;

import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.outbound.consignment.domain.Consignment;

/**
 * 发货通知单Service接口
 * 
 * @author zzx
 * @date 2024-02-07
 */
public interface IConsignmentService 
{
    /**
     * 查询发货通知单
     * 
     * @param consignmentId 发货通知单主键
     * @return 发货通知单
     */
    public Consignment selectConsignmentByConsignmentId(String consignmentId);

    /**
     * 查询发货通知单列表
     * 
     * @param consignment 发货通知单
     * @return 发货通知单集合
     */
    public List<Consignment> selectConsignmentList(Consignment consignment);

    /**
     * 新增发货通知单
     * 
     * @param consignment 发货通知单
     * @return 结果
     */
    public int insertConsignment(Consignment consignment);

    /**
     * 修改发货通知单
     * 
     * @param consignment 发货通知单
     * @return 结果
     */
    public int updateConsignment(Consignment consignment);

    /**
     * 批量删除发货通知单
     * 
     * @param consignmentIds 需要删除的发货通知单主键集合
     * @return 结果
     */
    public int deleteConsignmentByConsignmentIds(String[] consignmentIds);

    /**
     * 删除发货通知单信息
     * 
     * @param consignmentId 发货通知单主键
     * @return 结果
     */
    public int deleteConsignmentByConsignmentId(String consignmentId);

    AjaxResult updateAudit(String consignmentId);

    AjaxResult updateClose(String consignmentId);

    AjaxResult syncData(String consignment);
}
